home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 9 / FM Towns Free Software Collection 9.iso / t_os / tool / support3 / support3.cfg < prev    next >
Text File  |  1994-11-16  |  15KB  |  285 lines

  1. 10 GOTO *FORMAT
  2. 20 *FED_IN
  3. 30 FOR I=0 TO 15
  4. 40 FOR COL=0 TO 15
  5. 50 PALETTE COL,[PAL%(0,COL)*I,PAL%(1,COL)*I,PAL%(2,COL)*I]
  6. 60 NEXT
  7. 70 NEXT:RETURN
  8. 80 *FED_OUT
  9. 90 FOR I=15 TO 0 STEP -1
  10. 100 FOR COL=0 TO 15
  11. 110 PALETTE COL,[PAL%(0,COL)*I,PAL%(1,COL)*I,PAL%(2,COL)*I]
  12. 120 NEXT
  13. 130 NEXT:RETURN
  14. 140 *CONNECT
  15. 150 CONNECT (X1,Y2)-(X1,Y1)-(X2,Y1),7,PSET
  16. 160 CONNECT (X2,Y1+1)-(X2,Y2)-(X1+1,Y2),%8,PSET
  17. 170 RETURN
  18. 180 *CONNECT2
  19. 190 CONNECT (X1,Y2)-(X1,Y1)-(X2,Y1),7,PSET
  20. 200 CONNECT (X1+1,Y2-1)-(X1+1,Y1+1)-(X2-1,Y1+1),7,PSET
  21. 210 CONNECT (X2,Y1+1)-(X2,Y2)-(X1+1,Y2),%8,PSET
  22. 220 CONNECT (X2-1,Y1+2)-(X2-1,Y2-1)-(X1+2,Y2-1),%8,PSET
  23. 230 RETURN
  24. 240 *CONNECTR
  25. 250 CONNECT (X1,Y2)-(X1,Y1)-(X2,Y1),%8,PSET
  26. 260 CONNECT (X2,Y1+1)-(X2,Y2)-(X1+1,Y2),7,PSET
  27. 270 RETURN
  28. 280 *CONNECT2R
  29. 290 CONNECT (X1,Y2)-(X1,Y1)-(X2,Y1),%8,PSET
  30. 300 CONNECT (X1+1,Y2-1)-(X1+1,Y1+1)-(X2-1,Y1+1),%8,PSET
  31. 310 CONNECT (X2,Y1+1)-(X2,Y2)-(X1+1,Y2),7,PSET
  32. 320 CONNECT (X2-1,Y1+2)-(X2-1,Y2-1)-(X1+2,Y2-1),7,PSET
  33. 330 RETURN
  34. 340 *IDOU
  35. 350 MOUSE 2,AND1$,DOT1$
  36. 360 OWX(W)=WX(W):OWY(W)=WY(W)
  37. 370 HA=1:IX=MX-WX(W):IY=MY-WY(W):GET@A(WX(W),WY(W))-(WX(W)+LONG_X,WY(W)+LONG_Y),AWIN
  38. 380 MOUSE 4,IX,IY,639-(WX(W)+LONG_X-MX),479-(WY(W)+LONG_Y-MY)
  39. 390 WHILE MX*MY=OMX*OMY
  40. 400 MX=MOUSE(0):MY=MOUSE(1)
  41. 410 IF MOUSE(2,0)=-1 THEN ELSE GOTO *UNDEL
  42. 420 WEND
  43. 430 IF HA=1 THEN 450
  44. 440 LINE(OMX-IX,OMY-IY)-(OMX-IX+LONG_X,OMY-IY+LONG_Y),XOR,,B
  45. 450 LINE(MX-IX,MY-IY)-(MX-IX+LONG_X,MY-IY+LONG_Y),XOR,,B
  46. 460 OMX=MX:OMY=MY:HA=0:WX(W)=MX-IX:WY(W)=MY-IY:GOTO 390
  47. 470 *UNDEL 'このサブルーチンは使用してはいけない。
  48. 480 LINE(OMX-IX,OMY-IY)-(OMX-IX+LONG_X,OMY-IY+LONG_Y),XOR,,B
  49. 490 PUT@A(OWX(W),OWY(W))-(OWX(W)+LONG_X,OWY(W)+LONG_Y),BACK,,,,,W*30000
  50. 500 GOSUB *BACKSAVE
  51. 510 PUT@A(WX(W),WY(W))-(WX(W)+LONG_X,WY(W)+LONG_Y),AWIN
  52. 520 MOUSE 4,0,0,639,479:MOUSE 2,AND0$,DOT0$
  53. 530 RETURN
  54. 540 *BACKSAVE
  55. 550 GET@A(WX(W),WY(W))-(WX(W)+LONG_X,WY(W)+LONG_Y),BACK,30000*W
  56. 560 RETURN
  57. 570 *PUTB
  58. 580 PUT@A(WX(W),WY(W))-(WX(W)+LONG_X,WY(W)+LONG_Y),BACK,,,,,W*30000
  59. 590 RETURN
  60. 600 *SANKAKU
  61. 610 RESTORE 620
  62. 620 DATA -1,0,0,0,0
  63. 630 DATA -1,-1,0,0,0
  64. 640 DATA -1,-1,-1,0,0
  65. 650 DATA -1,-1,-1,-1,0
  66. 660 DATA -1,-1,-1,-1,-1
  67. 670 DATA -1,-1,-1,-1,0
  68. 680 DATA -1,-1,-1,0,0
  69. 690 DATA -1,-1,0,0,0
  70. 700 DATA -1,0,0,0,0
  71. 710 DATA 0,0,0,0,0
  72. 720 FOR I=0 TO 9:FOR A=0 TO 4:READ DOT
  73. 730 IF DOT=-1 THEN PSET(I,480+A),7
  74. 740 NEXT:NEXT
  75. 750 GET@A(0,480)-(9,484),SANKAKU
  76. 760 RETURN
  77. 770 *EXIT
  78. 780 RESTORE 820
  79. 790 FOR Y=0 TO 12:FOR X=0 TO 10:READ E
  80. 800 IF E=1 THEN PSET(640+X,Y),7
  81. 810 NEXT:NEXT
  82. 820 DATA 0,0,0,0,1,1,1,0,0,0,0
  83. 830 DATA 0,0,0,0,1,1,1,0,0,0,0
  84. 840 DATA 0,0,0,0,1,1,1,0,0,0,0
  85. 850 DATA 0,0,0,0,1,1,1,0,0,0,0
  86. 860 DATA 0,0,0,0,0,0,0,0,0,0,0
  87. 870 DATA 0,0,0,0,1,1,1,0,0,0,0
  88. 880 DATA 0,0,0,0,1,1,1,0,0,0,0
  89. 890 DATA 0,0,0,1,1,1,1,1,0,0,0
  90. 900 DATA 0,0,0,1,1,1,1,1,0,0,0
  91. 910 DATA 0,0,1,1,1,1,1,1,1,0,0
  92. 920 DATA 0,0,1,1,1,1,1,1,1,0,0
  93. 930 DATA 0,1,1,1,1,1,1,1,1,1,0
  94. 940 DATA 1,1,1,1,1,1,1,1,1,1,1
  95. 950 GET@A(640,0)-(650,12),EXIT
  96. 960 *FMTOWNS
  97. 970 RESTORE 980
  98. 980 DATA 0,0,0,0,0,0,-1,0,0,0,-1
  99. 990 DATA 0,0,0,0,0,0,-1,-1,-1,-1,-1
  100. 1000 DATA 0,0,0,0,0,0,-1,0,-1,0,-1
  101. 1010 DATA 0,0,0,0,0,0,-1,0,-1,0,0
  102. 1020 DATA 0,0,0,0,0,0,-1,-1,0,0,0
  103. 1030 DATA 0,0,0,0,0,0,0,0,0,0,0
  104. 1040 DATA 0,0,0,0,0,0,-1,0,0,0,-1
  105. 1050 DATA 0,0,0,0,0,0,-1,-1,-1,-1,-1
  106. 1060 DATA 0,0,0,0,0,0,0,-1,-1,0,0
  107. 1070 DATA 0,0,0,0,0,0,0,0,0,-1,-1
  108. 1080 DATA 0,0,0,0,0,0,0,0,-1,-1,0
  109. 1090 DATA 0,0,0,0,0,0,-1,-1,0,0,-1
  110. 1100 DATA -1,-1,0,0,0,0,-1,-1,-1,-1,-1
  111. 1110 DATA -1,-1,0,0,0,0,-1,0,0,0,-1
  112. 1120 DATA -1,-1,0,0,0,0,0,0,0,0,0
  113. 1130 DATA -1,-1,0,0,0,0,0,0,0,0,0
  114. 1140 DATA -1,-1,-1,-1,-1,0,-1,-1,-1,-1,-1
  115. 1150 DATA -1,-1,-1,-1,-1,0,-1,-1,-1,-1,-1
  116. 1160 DATA -1,-1,0,0,0,0,0,0,0,0,0
  117. 1170 DATA -1,-1,0,0,0,0,0,0,0,0,0
  118. 1180 DATA -1,-1,0,0,0,0,0,0,0,0,0
  119. 1190 DATA -1,-1,0,0,-1,0,-1,0,0,0,0
  120. 1200 DATA 0,0,-1,-1,-1,0,-1,-1,-1,0,0
  121. 1210 DATA 0,-1,-1,-1,-1,0,-1,-1,-1,-1,0
  122. 1220 DATA 0,-1,-1,0,0,0,0,0,-1,-1,0
  123. 1230 DATA -1,-1,0,0,0,0,0,0,0,-1,-1
  124. 1240 DATA -1,-1,0,0,0,0,0,0,0,-1,-1
  125. 1250 DATA -1,-1,0,0,0,0,0,0,0,-1,-1
  126. 1260 DATA 0,-1,-1,0,0,0,0,0,-1,-1,0
  127. 1270 DATA 0,-1,-1,-1,-1,0,-1,-1,-1,-1,0
  128. 1280 DATA 0,0,-1,-1,-1,0,-1,-1,-1,0,0
  129. 1290 DATA 0,0,0,0,-1,0,-1,0,0,0,0
  130. 1300 DATA -1,-1,0,0,0,0,0,0,0,0,0
  131. 1310 DATA -1,-1,-1,-1,-1,0,0,0,0,0,0
  132. 1320 DATA 0,0,-1,-1,-1,0,-1,-1,0,0,0
  133. 1330 DATA 0,0,0,0,0,0,-1,-1,-1,-1,-1
  134. 1340 DATA 0,0,0,0,0,0,-1,-1,-1,-1,-1
  135. 1350 DATA 0,0,0,-1,-1,0,-1,-1,0,0,0
  136. 1360 DATA -1,-1,-1,-1,-1,0,0,0,0,0,0
  137. 1370 DATA -1,-1,-1,-1,-1,0,0,0,0,0,0
  138. 1380 DATA 0,0,0,-1,-1,0,-1,-1,0,0,0
  139. 1390 DATA 0,0,0,0,0,0,-1,-1,-1,-1,-1
  140. 1400 DATA 0,0,0,0,0,0,-1,-1,-1,-1,-1
  141. 1410 DATA 0,0,-1,-1,-1,0,-1,-1,0,0,0
  142. 1420 DATA -1,-1,-1,-1,-1,0,0,0,0,0,0
  143. 1430 DATA -1,-1,0,0,0,0,0,0,0,0,0
  144. 1440 DATA 0,0,0,0,0,0,0,0,0,0,0
  145. 1450 DATA -1,-1,-1,-1,-1,0,-1,-1,-1,-1,-1
  146. 1460 DATA -1,-1,-1,-1,-1,0,-1,-1,-1,-1,-1
  147. 1470 DATA -1,-1,0,0,0,0,0,0,0,0,0
  148. 1480 DATA -1,-1,0,0,0,0,0,0,0,0,0
  149. 1490 DATA -1,-1,-1,-1,0,0,0,0,0,0,0
  150. 1500 DATA 0,-1,-1,-1,-1,0,-1,0,0,0,0
  151. 1510 DATA 0,0,0,-1,-1,0,-1,-1,-1,0,0
  152. 1520 DATA 0,0,0,0,0,0,-1,-1,-1,-1,0
  153. 1530 DATA 0,0,0,0,0,0,0,0,-1,-1,-1
  154. 1540 DATA -1,-1,-1,-1,-1,0,-1,-1,-1,-1,-1
  155. 1550 DATA -1,-1,-1,-1,-1,0,-1,-1,-1,-1,-1
  156. 1560 DATA 0,0,0,0,0,0,0,0,0,0,0
  157. 1570 DATA 0,-1,-1,-1,0,0,0,0,0,-1,-1
  158. 1580 DATA -1,-1,-1,-1,-1,0,0,0,0,-1,-1
  159. 1590 DATA -1,-1,-1,-1,-1,0,0,0,0,-1,-1
  160. 1600 DATA -1,-1,0,-1,-1,0,0,0,0,-1,-1
  161. 1610 DATA -1,-1,0,-1,-1,0,0,0,0,-1,-1
  162. 1620 DATA -1,-1,0,-1,-1,0,0,0,0,-1,-1
  163. 1630 DATA -1,-1,0,-1,-1,0,0,0,0,-1,-1
  164. 1640 DATA -1,-1,0,-1,-1,0,-1,-1,-1,-1,-1
  165. 1650 DATA -1,-1,0,-1,-1,0,-1,-1,-1,-1,-1
  166. 1660 DATA 0,0,0,0,-1,0,-1,-1,-1,-1,0
  167. 1670 DATA 0,0,0,0,0,0,0,0,0,0,0
  168. 1680 CLS:FOR I=0 TO 69:FOR A=0 TO 10:READ DOT
  169. 1690 IF DOT=-1 THEN PSET(I,480+A),7
  170. 1700 NEXT:NEXT
  171. 1710 GET@A(0,480)-(69,490),FMTOWNS:RETURN
  172. 1720 *OPENWIN
  173. 1730 LINE(WX1,WY1)-(WX2,WY2),PSET,7,BF:LINE(WX1,WY1)-(WX2,WY2),PSET,%7,B
  174. 1740 LINE(WX1,WY1)-(WX2,WY1+17),PSET,%3,BF:LINE(WX1,WY1)-(WX2,WY1+17),PSET,%7,B
  175. 1750 LINE(WX1,WY1)-(WX1+WN,WY1+17),PSET,%7,BF
  176. 1760 SYMBOL(WX1+20,WY1+3),MOJI$,.75!,.75!,7
  177. 1770 LINE(WX1+2,WY1+2)-(WX1+15,WY1+15),PSET,7,BF
  178. 1780 X1=WX1+2:Y1=WY1+2:X2=WX1+15:Y2=WY1+15:GOSUB *CONNECT
  179. 1790 FOR I=0 TO 6
  180. 1800 LINE(WX1+3,WY1+4+I*2)-(WX1+14,WY1+4+I*2),PSET,%7
  181. 1810 LINE(WX1+4+I*2,WY1+3)-(WX1+4+I*2,WY1+14),PSET,%7
  182. 1820 NEXT:RETURN
  183. 1830 *FORMAT 'ディスクの初期化ではない。
  184. 1840 W=0:CLEAR ,,,,,300*1024:SCREEN 0:SCREEN@0
  185. 1850 WINDOW(0,0)-(1023,511):VIEW(0,0)-(1023,511)
  186. 1860 CLS
  187. 1870 AND0$=CHR$(&H7F,&HFF,&H3F,&HFF,&H1F,&HFF,&H0F,&HFF,&H07,&HFF,&H03,&HFF,&H01,&HFF,&H00,&HFF,&H00,&H7F,&H00,&H3F,&H00,&H1F,&H00,&HFF,&H00,&HFF,&H18,&H7F,&H38,&H7F,&HFC,&H7F)
  188. 1880 DOT0$=CHR$(&H00,&H00,&H00,&H00,&H40,&H00,&H20,&H00,&H50,&H00,&H38,&H00,&H5C,&H00,&H2E,&H00,&H5F,&H00,&H2F,&H80,&H5E,&H00,&H26,&H00,&H42,&H00,&H03,&H00,&H01,&H00,&H00,&H00)
  189. 1890 AND1$=CHR$(&HFE,&H7F,&HF0,&H0F,&HE0,&H07,&HE0,&H01,&H80,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H80,&H00,&H80,&H00,&HC0,&H01,&HC0,&H01,&HE0,&H03,&HF0,&H07,&HFC,&H1F)
  190. 1900 DOT1$=CHR$(&H00,&H00,&H01,&H80,&H0D,&HB0,&H0D,&HB0,&H0D,&HB6,&H6D,&HB6,&H6F,&HF6,&H7F,&HFE,&H7F,&HFE,&H3F,&HFE,&H3F,&HFE,&H1F,&HFC,&H1F,&HFC,&H0F,&HF8,&H03,&HE0,&H00,&H00)
  191. 1910 AND2$=CHR$(&HFF,&HE7,&HFF,&H83,&HFE,&H01,&HF8,&H01,&HE0,&H21,&HC0,&H63,&H81,&HC3,&H07,&HC7,&H0F,&H87,&H0F,&H8F,&H0F,&H0F,&H9F,&H1F,&HF0,&H1F,&HE0,&H3F,&HF0,&H7F,&HF0,&HFF)
  192. 1920 DOT2$=CHR$(&H00,&H00,&H00,&H18,&H00,&H7C,&H01,&H8C,&H06,&H08,&H18,&H08,&H20,&H10,&H40,&H10,&H40,&H20,&H40,&H20,&H40,&H40,&H00,&H40,&H00,&H80,&H0F,&H00,&H00,&H00,&H00,&H00)
  193. 1930 DIM AWIN(40000),PAL%(2,15),SANKAKU(500),DD(2000),ROM(480),EXIT(500)
  194. 1940 DIM BACK(30000),WIN%(20000),FMTOWNS(500),MB(10000),BAR(10000)
  195. 1950 LOAD@"palette2.pal",PAL%:SCREEN@ 0:PALETTE 7,[30,30,30]:GOSUB *FED_IN:GOSUB *EXIT
  196. 1960 DEF FONT"システム   12ドット":GOSUB *FMTOWNS:CLS:GOSUB *SANKAKU:MOUSE 0:MOUSE 1,320,240,1:MOUSE 2,AND0$,DOT0$
  197. 1970 GOTO *YOURPROGRAM
  198. 1980 *RK
  199. 1990 CLS
  200. 2000 FOR I=0 TO MAX-1
  201. 2010 IF BS$(I)="BOXFIL" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF
  202. 2020 IF BS$(I)="BOXFIL" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF
  203. 2030 IF BS$(I)="CONNECT" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT
  204. 2040 IF BS$(I)="CONNECT" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT
  205. 2050 IF BS$(I)="CONNECT2" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2
  206. 2060 IF BS$(I)="CONNECT2" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2
  207. 2070 IF BS$(I)="CONNECTR" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECTR
  208. 2080 IF BS$(I)="CONNECTR" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECTR
  209. 2090 IF BS$(I)="CONNECT2R" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2R
  210. 2100 IF BS$(I)="CONNECT2R" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2R
  211. 2110 IF BS$(I)="FMTOWNS" THEN PUT@A(HX(I),HY(I))-(HDX(I),HDY(I)),FMTOWNS,MATTE,,,0
  212. 2120 IF BS$(I)="MCONNECT" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT
  213. 2130 IF BS$(I)="MCONNECT" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT
  214. 2140 IF BS$(I)="MCONNECT2" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2
  215. 2150 IF BS$(I)="MCONNECT2" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2
  216. 2160 IF BS$(I)="MCONNECTR" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECTR
  217. 2170 IF BS$(I)="MCONNECTR" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECTR
  218. 2180 IF BS$(I)="MCONNECT2R" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2R
  219. 2190 IF BS$(I)="MCONNECT2R" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2R
  220. 2200 IF BS$(I)="MOJI" AND COL(I)>=0 AND COL(I)<=7 THEN SYMBOL(HX(I),HY(I)),MOJI$(I),.75!,.75!,COL(I)
  221. 2210 IF BS$(I)="MOJI" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:SYMBOL(HX(I),HY(I)),MOJI$(I),.75!,.75!,%C
  222. 2220 IF BS$(I)="EXIT" THEN PUT@A(HX(I),HY(I))-(HDX(I),HDY(I)),EXIT,MATTE,,,0
  223. 2230 IF BS$(I)="SANKAKU" THEN PUT@A(HX(I),HY(I))-(HDX(I),HDY(I)),SANKAKU,MATTE,,,0
  224. 2240 NEXT
  225. 2250 RETURN
  226. 2260 *ボタン処理
  227. 2270 IF PUSHB(HMX)=2 THEN *BOTTONXOR
  228. 2280 IF PUSHB(HMX)=1 THEN *BOTTONH
  229. 2290 IF COL(HMX)<=7 AND COL(HMX)>=0 AND BS$(HMX)="CONNECT" THEN LINE(HX(HMX),HY(HMX))-(HDX(HMX),HDY(HMX)),PSET,COL(HMX),B
  230. 2300 IF COL(HMX)<=15 AND COL(HMX)>=8 AND BS$(HMX)="CONNECT" THEN C=COL(HMX)-8:LINE(HX(HMX),HY(HMX))-(HDX(HMX),HDY(HMX)),PSET,%C,B
  231. 2310 IF COL(HMX)<=7 AND COL(HMX)>=0 AND BS$(HMX)="CONNECT2" THEN
  232. 2320 FOR I=0 TO 1:LINE(HX(HMX)+I,HY(HMX)+I)-(HDX(HMX)-I,HDY(HMX)-I),PSET,COL(HMX),B:NEXT
  233. 2330 ENDIF
  234. 2340 IF COL(HMX)<=15 AND COL(HMX)>=8 AND BS$(HMX)="CONNECT2" THEN
  235. 2350 C=COL(HMX)-8:FOR I=0 TO 1:LINE(HX(HMX)+I,HY(HMX)+I)-(HDX(HMX)-I,HDY(HMX)-I),PSET,%C,B:NEXT
  236. 2360 ENDIF
  237. 2370 IF COL(HMX)<=7 AND COL(HMX)>=0 AND BS$(HMX)="CONNECTR" THEN LINE(HX(HMX),HY(HMX))-(HDX(HMX),HDY(HMX)),PSET,COL(HMX),BF
  238. 2380 IF COL(HMX)<=15 AND COL(HMX)>=8 AND BS$(HMX)="CONNECTR" THEN C=COL(HMX)-8:LINE(HX(HMX),HY(HMX))-(HDX(HMX),HDY(HMX)),PSET,%C,B
  239. 2390 IF COL(HMX)<=7 AND COL(HMX)>=0 AND BS$(HMX)="CONNECT2R" THEN
  240. 2400 FOR I=0 TO 1:LINE(HX(HMX)+I,HY(HMX)+I)-(HDX(HMX)-I,HDY(HMX)-I),PSET,COL(HMX),B:NEXT
  241. 2410 ENDIF
  242. 2420 IF COL(HMX)<=15 AND COL(HMX)>=8 AND BS$(HMX)="CONNECT2R" THEN
  243. 2430 C=COL(HMX)-8:FOR I=0 TO 1:LINE(HX(HMX)+I,HY(HMX)+I)-(HDX(HMX)-I,HDY(HMX)-I),PSET,%C,B:NEXT
  244. 2440 ENDIF
  245. 2450 WHILE MOUSE(2,0)=-1:MX=MOUSE(0):MY=MOUSE(1)
  246. 2460 IF MX>=HX(HMX) AND MY>=HY(HMX) AND MX<=HDX(HMX) AND MY<=HDY(HMX) THEN
  247. 2470 ELSE
  248. 2480 IF BS$(HMX)="CONNECT" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT
  249. 2490 IF BS$(HMX)="CONNECT2" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2
  250. 2500 IF BS$(HMX)="CONNECTR" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECTR
  251. 2510 IF BS$(HMX)="CONNECT2R" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2R
  252. 2520 RETURN:ENDIF
  253. 2530 WEND
  254. 2540 IF BS$(HMX)="CONNECT" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT
  255. 2550 IF BS$(HMX)="CONNECT2" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2
  256. 2560 IF BS$(HMX)="CONNECTR" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECTR
  257. 2570 IF BS$(HMX)="CONNECT2R" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2R
  258. 2580 SWITCH=1:RETURN
  259. 2590 *BOTTONXOR
  260. 2600 LINE(HX(HMX),HY(HMX))-(HDX(HMX),HDY(HMX)),XOR,,BF
  261. 2610 WHILE MOUSE(2,0)=-1:MX=MOUSE(0):MY=MOUSE(1)
  262. 2620 IF MX>=HX(HMX) AND MY>=HY(HMX) AND MX<=HDX(HMX) AND MY<=HDY(HMX) ELSE LINE(HX(HMX),HY(HMX))-(HDX(HMX),HDY(HMX)),XOR,,BF:RETURN
  263. 2630 WEND
  264. 2640 LINE(HX(HMX),HY(HMX))-(HDX(HMX),HDY(HMX)),XOR,,BF:SWITCH=1:RETURN
  265. 2650 *BOTTONH
  266. 2660 IF BS$(HMX)="CONNECT" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECTR
  267. 2670 IF BS$(HMX)="CONNECT2" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2R
  268. 2680 IF BS$(HMX)="CONNECTR" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT
  269. 2690 IF BS$(HMX)="CONNECT2R" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2
  270. 2700 WHILE MOUSE(2,0)=-1:MX=MOUSE(0):MY=MOUSE(1)
  271. 2710 IF MX>=HX(HMX) AND MY>=HY(HMX) AND MX<=HDX(HMX) AND MY<=HDY(HMX) THEN
  272. 2720 ELSE
  273. 2730 IF BS$(HMX)="CONNECT" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT
  274. 2740 IF BS$(HMX)="CONNECT2" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2
  275. 2750 IF BS$(HMX)="CONNECTR" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECTR
  276. 2760 IF BS$(HMX)="CONNECT2R" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2R
  277. 2770 RETURN:ENDIF
  278. 2780 WEND
  279. 2790 IF BS$(HMX)="CONNECT" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT
  280. 2800 IF BS$(HMX)="CONNECT2" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2
  281. 2810 IF BS$(HMX)="CONNECTR" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECTR
  282. 2820 IF BS$(HMX)="CONNECT2R" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2R
  283. 2830 SWITCH=1:RETURN
  284. 2840 *YOURPROGRAM
  285.